A compact, predicate-independent state space representation for model checking
نویسنده
چکیده
State space explosion is a significant obstacle in the formal verification of properties on distributed programs. Much effort has been directed in the area of state space reduction for model checking distributed programs. Such research efforts mainly employ one of two techniques: (a) construction of a reduced explicit state space, or (b) a compact representation of the state space. In this paper, we explore the tradeoffs between these approaches, and the limitations of current model-checking techniques. We propose a new approach that uses a compact state space representation, while at the same time facilitating efficient detection of properties in the model. Our representation uses a hybrid of an interleaving approach and a true concurrency representation. We provide experimental results comparing the performance of our implementation against a wide variety of popular model-checking tools.
منابع مشابه
A Hybrid Meta-heuristic Approach to Cope with State Space Explosion in Model Checking Technique for Deadlock Freeness
Model checking is an automatic technique for software verification through which all reachable states are generated from an initial state to finding errors and desirable patterns. In the model checking approach, the behavior and structure of system should be modeled. Graph transformation system is a graphical formal modeling language to specify and model the system. However, modeling of large s...
متن کاملReachability checking in complex and concurrent software systems using intelligent search methods
Software system verification is an efficient technique for ensuring the correctness of a software product, especially in safety-critical systems in which a small bug may have disastrous consequences. The goal of software verification is to ensure that the product fulfills the requirements. Studies show that the cost of finding and fixing errors in design time is less than finding and fixing the...
متن کاملModel Checking Software via Abstraction of Loop Transitions
This paper reports a data abstraction algorithm that is targeted to minimize the contribution of the loop executions to the program state space. The loop abstraction is defined as the syntactic program transformation that results in the sound representation of the concrete program. The abstraction algorithm is defined and implemented in the context of the integrated software design, testing and...
متن کاملAutomatic Abstraction Using Generalized Model Checking
Generalized model checking is a framework for reasoning about partial state spaces of concurrent reactive systems. The state space of a system is only “partial” (partially known) when a full state-space exploration is not computationally tractable, or when abstraction techniques are used to simplify the system’s representation. In the context of automatic abstraction, generalized model checking...
متن کاملState Space Reduction Strategie for Model Checking Concurrent C Programs
Model checking is an effective technique for uncovering subtle errors in concurrent systems. Unfortunately, the state space explosion is the main bottleneck in model checking tools. Here we propose a state space reduction technique for model checking concurrent programs written in C. The reduction technique consists in an analysis phase, which defines an approximate agglomeration predicate. Thi...
متن کامل